switch (判斷值) {
case 比對值1:
...
[break;]
case 比對值2:
...
[break;]
default:
... ..
}
練習:
char n = 20;
// byte, short, char, int, String, enum 可以使用的
switch (n) {
case 1:
System.out.println("A");
break;
case 10:
System.out.println("B");
break;
case 'a':
System.out.println("C");
break;
default:
System.out.println("Z");
}
}
}
switch case語句有如下規則:
switch 語句中的標籤變量可以是:byte、short、int 或 char。從 Java SE 7 開始,支持 switch 字符串類型,同時 case 必須為字符串特徵或字面量。
switch 語句可以擁有多個 case 語句。每個 case 後面跟一個要比較的值和冒號。
case語句中的值類型必須與變量的數據類型相同,而且只能是性質或字面特徵。
當隨後的變量值與 case 語句發生變化時,那麼語句的語句開始執行,直到 break 語句出現時才會跳出 switch 語句。
當遇到break語句跳轉時,switch語句終止。程序到switch語句後面的語句執行。case語句必須包含break語句。如果沒有break語句出現,程序會執行下case語句,直到出現break語句。
switch 語句可以包含一個默認分支,該分支通常可以包含一個默認分支(可以在任何位置,但建議在最後一個)。默認情況下沒有語句值和最後一個值的執行時間。默認是需要break 語句。
switch case 執行時,一定會先進行匹配,返回當前case的值,再根據是否有break,判斷是否繼續輸出,或者跳出判斷。
Java default 的使用
我們都知道在Java語言的介面中只能定義方法名,而不能包含方法的具體實現程式碼。介面中定義的方法必須在介面的非抽象子類中實現。